home *** CD-ROM | disk | FTP | other *** search
- procedure Puts( s:string );
- var regist:registers;
- param:array[1..256] of integer;
- i:byte;
- begin
- s:=s+'$';
- for i:=1 to length( s ) do
- begin
- MemW[Seg( param ):Ofs( param )+i-1]:=integer(s[i]);
- end;
- regist.ah:=$09;
- regist.ds:=Seg( param );
- regist.dx:=Ofs( param );
- Intr( $21, regist );
- end;
-
- {==背景色を変えるルーチン==ここは既に完成==}
- {made 92.3.29}
- {黒=0;青=1;緑=2;水色=3;赤=4;紫=5;黄色=6;白=7;}
- procedure backcolor(iro:byte);
- begin
- case iro of
- 0 :puts(#27+'[40m');
- 1 :puts(#27+'[44m');
- 2 :puts(#27+'[42m');
- 3 :puts(#27+'[46m');
- 4 :puts(#27+'[41m');
- 5 :puts(#27+'[45m');
- 6 :puts(#27+'[43m');
- 7 :puts(#27+'[47m');
- end;
- end;
-
- {======文章を空白処理するためのルーチン==ここは既に完成============}
- {made 92.3.30}
- procedure kuhakusyori(var RK:string);
- var
- dammy:string;
- begin
- Repeat {RKの左側が一文字空白であるか調べその空白を削除する}
- If Pos(' ',RK)=1 then delete(RK,1,1);
- until Pos(' ',RK) <> 1;
- Repeat {RKの右側が一文字空白であるか調べその空白を削除する}
- Dammy:=copy(RK,length(RK),1);
- If Dammy=' ' then delete(RK,length(RK),1);
- until Dammy <> ' ';
- Repeat
- Dammy:=copy(RK,length(RK),1);
- If ((Dammy='.') or (Dammy='?') or (Dammy='!') or (Dammy=':'))
- then insert(' ',RK,length(RK));
- until not ((Dammy='.') AND (Dammy='?') and (Dammy='!') and (Dammy=':'));
- end;
-
- {======辞書は何を使うかを設定するためのルーチン===ここは既に完成============}
- {made 92.3.29}
- procedure config(var jisyo1,jisyo2,jisyo3:string);
- var
- data:string[255];
- config_file:text;
- begin
- assign(config_file,'CHECK.cfg');
- reset(config_file);
- while not Eof(config_file) do
- begin
- readln(config_file,data);
- if copy(data,1,pos('=',data)-1)='JIsyo1'
- then jisyo1:=copy(data,pos('=',data)+1,length(data));
- if copy(data,1,pos('=',data)-1)='JIsyo2'
- then jisyo2:=copy(data,pos('=',data)+1,length(data));
- if copy(data,1,pos('=',data)-1)='JIsyo3'
- then jisyo3:=copy(data,pos('=',data)+1,length(data));
- end;
- close(config_file);
- end;
-
- {=========タイトル表示ルーチン===ここは既に完成==========================}
- {made 92.3.29}
- procedure Title; {コピーライト表示}
- begin
- clrscr;
- TextColor(Shiro);
- Write(' ---- For All FM-Series');
- Writeln(' 英文翻訳支援プログラムシリーズ ----');
- Write(' --- ');
- TextColor(mizuiro);
- Write('CHECK.EXE Ver.1.02α');
- TextColor(Shiro);
- Writeln(' ---');
- WriteLn(' Programed by H.Nakayasu (c) 1992');
- TextColor(Shiro);
- end;
-
- {==メモリーが充分かどうかをチェックするルーチン==ここは既に完成==}
- {made 92.3.29}
- {$f+}
- function HeapFunc(Size: word): integer;
- {$f-}
- begin
- Writeln(^G+'メモリーが足りません');
- HeapFunc := 1;
- end; { HeapErrorFunc }
-
- {====ファイルより文章を切り出すためのルーチン==ここは既に完成================}
- {made 92.3.29}
- {文章の右側が . ? ! : 改行 になるまで調べて一文としてファイルから切り取る}
- procedure CutSTRINGfromDocument(var Document_file:text; var STringLine:string);
- var
- ch:char;
- begin
- stringline:='';
- repeat
- read(Document_file,ch);
- stringline:=stringline+ch;
- until ((ch='.') or (ch='?') or (ch='!') or
- (ch=':') or (ch=CrChar));
- Repeat {stringlineの左側が一文字空白であるか調べその空白を削除する}
- If Pos(' ',stringline)=1 then delete(stringline,1,1);
- until Pos(' ',stringline) <> 1;
- end;
-
- {======文章より単語を1つ切り出すためのルーチン==ここは既に完成============}
- {made 92.3.30}
- procedure CutLeftWORDfromSTRINGline(var STringLin,word:string);
- var
- ch:string[1];
- begin
- Repeat {STringLineの左側が一文字空白であるか調べその空白を削除する}
- If Pos(' ',STringLin)=1 then delete(STringLin,1,1);
- until Pos(' ',STringLin) <> 1;
- word:='';
- repeat
- ch:=copy(stringlin,1,1);
- delete(stringlin,1,1);
- word:=word+ch;
- until ((ch=' '){ and (ch=CrChar)});
- Repeat {STringLineの左側が一文字空白であるか調べその空白を削除する}
- If Pos(' ',STringLin)=1 then delete(STringLin,1,1);
- until Pos(' ',STringLin) <> 1;
- If Pos(' ',word)=1 then delete(word,1,1);
- end;
-
- {===ここはファイルをオープンするためのルーチン==既に完成=================}
- {made 92.3.30}
- procedure OpenFile(var filename:string; var textfile:text; var flag:integer);
- begin
- { if Pos('.',FileName) = 0 then FileName := FileName+'.txt';}
- Assign(TextFile,FileName);
- {$i-} Reset(TextFile); {$i+}
- if IOResult <> 0 then
- begin
- textcolor(aka);
- Writeln(^G,'ファイルが存在しません');
- textcolor(shiro);
- if IOResult <> 0 then flag:=1;
- end
- else flag:=0;{if}
- end; { OpenFile }
-
- {===指定した辞書の中から単語を検索するためのルーチン==既に完成===========}
- {made 92.3.30}
- procedure SearchWordfromDIC(var jisyo:string;
- var Searchword:string;
- var return:string);
- var
- dicFile: text;
- Line: string;
- begin
- assign(dicFile,jisyo);
- reset(dicFile);
- repeat
- Readln(dicFile, Line);
- kuhakusyori(line);
- if Searchword=line then return:=line else return:='';
- until (eof(dicfile) or (Searchword=line));
- close(dicfile);
- end;
-
-
- {===ファイルに新しくデータを追加するためのルーチン====既に完成===========}
- {made 92.3.30}
- procedure DataPlus2File(var filename:string; var word:string);
- var textfile:text;
- begin
- Assign(TextFile,FileName);
- Append(TextFile);
- writeln(textfile,word);
- flush(textfile);
- close(textfile);
- end;
-
- {===ファイルの存在を確認するためのルーチン====既に完成===========}
- {made 92.3.30}{1:無かったら新規作成 2:無かったら終了 3:あっても新規作成}
- procedure CheckFileExist(i:integer; filename:string);
- var textfile:text;
- begin
- Assign(TextFile,FileName);
- {$i-} Reset(TextFile); {$i+}
- if IOResult <> 0 then
- begin
- case i of
- 1:begin
- rewrite(TextFile);
- textcolor(aka);
- Writeln(^G,'ファイルが存在しなかったので新規作成しました');
- textcolor(shiro);
- flush(textfile);
- close(textfile);
- end;
- 2:begin
- rewrite(TextFile);
- textcolor(aka);
- Writeln(^G,'ファイルが存在しません');
- textcolor(shiro);
- close(textfile);
- halt;
- end;
- end;
- end;
- if ((IOResult=0) and (i=3)) then
- begin
- rewrite(TextFile);
- textcolor(aka);
- writeln(filename,'の中身を空にしました');
- textcolor(shiro);
- flush(textfile);
- close(textfile);
- end;
- end;
-
- procedure line;
- var i:integer;
- begin
- textcolor(midori);
- for i:=1 to 80 do
- write('-');
- textcolor(shiro);
- end;
-
-